// EDVector3d.h: interface for the EDVector3d class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_EDVECTOR3D_H__4862A75A_0222_4F29_8E81_CB03C1CD3C39__INCLUDED_)
#define AFX_EDVECTOR3D_H__4862A75A_0222_4F29_8E81_CB03C1CD3C39__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "EDVariable.h"

class EDVector3d  
{
public:
	EDVector3d();
	virtual ~EDVector3d();	
	EDVector3d (
		const EDSQLExpression& exp0,
		const EDSQLExpression& exp1,
		const EDSQLExpression& exp2 );	
	EDVector3d (
		const CString& str0,
		const CString& str1,
		const CString& str2 );

public://Operator
	EDVector3d& operator = ( const EDVector3d& v );
	EDVector3d& operator = ( const AcGeVector3d& v );

public:
	static const EDVector3d kIdentity;
	EDSQLExpression x;
	EDSQLExpression y;
	EDSQLExpression z;

public:
	void Replace ( const CVarArray* pVarAr, const int nStart = 0 );
	BOOL IsSingleDigital();
	void Set (
		const EDSQLExpression& exp0,
		const EDSQLExpression& exp1,
		const EDSQLExpression& exp2 );
	void Set (
		const CString& str0,
		const CString& str1,
		const CString& str2 );
};

#endif // !defined(AFX_EDVECTOR3D_H__4862A75A_0222_4F29_8E81_CB03C1CD3C39__INCLUDED_)
